package com.bootdo.wx.service;

import com.bootdo.common.utils.R;
import com.bootdo.wx.domain.MemberUserDO;
import com.github.pagehelper.PageInfo;

import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
 * 用户,会员
 * 
 * @author chglee
 * @email 1992lcg@163.com
 * @date 2019-05-22 15:32:07
 */
public interface MemberUserService {
	
	MemberUserDO get(String id);
	
	List<MemberUserDO> list(Map<String, Object> map);
	
	int count(Map<String, Object> map);
	
	int save(MemberUserDO memberUser);
	
	int update(MemberUserDO memberUser);
	
	int remove(String id);
	
	int batchRemove(String[] ids);

	Map<String,Object> getMemberCenter(Map<String, Object> map);

	PageInfo<Map<String,Object>> getMyFans(Map<String, Object> map);

	MemberUserDO queryByOpenid(String openId);

	List<Map<String,Object>> getOrderEcharts(Map<String,Object> map);

	List<Map<String,Object>> allMoneyEcharts(Map<String,Object> map);

	List<Map<String,Object>> allUserEcharts(Map<String,Object> map);

	MemberUserDO getByCode(String code);

	R getExtension(Map<String, Object> params);

	List<Map<String,Object>> getMoneyListByUser(Map<String,Object> map);

	int getMoneyListByUserCount(Map<String, Object> map);

	void exportExcel(Map<String,Object> map,List<Map<String,Object>> moneyList, ServletOutputStream out,HttpServletRequest request);

	List<Map<String,Object>> getMyFansH(Map<String,Object> map);

	int getMyFansHCount(Map<String, Object> map);

	BigDecimal getShoppingNum(Map<String,Object> map);

	List<Map<String,Object>> getShoppingList(Map<String,Object> map);

	int getShoppingListCount(Map<String, Object> map);

	void shoppingExportExcel(Map<String,Object> map,List<Map<String,Object>> moneyList, ServletOutputStream out,HttpServletRequest request);

	int getZtChildrenNUm(Map<String, Object> map);

	R updateLevel(MemberUserDO userDO);

}
